Синтаксичний аналіз

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2024
Тип роботи:
Лекція
Предмет:
Інші

Частина тексту файла

Синтаксичний аналіз Контексно-вільні і вкорочувальні контексно-вільні граматики традиційно служать основою для синтаксичного аналізу при компіляції. Опис вхідної мови включає правила синтаксису, у відповідності з якими породжуються тексти вхідних програм. Кожному синтаксичному правилу у КВ-граматиці відповідає правило виводу (продукція) граматики. Тому послідовність правил виводу граматики, які застосовуються для породження тексту програми, визначає її структуру. Виводів деякого ланцюжка  EMBED Equation.3  у граматиці G у загальному випадку може бути досить багато. Це пояснюється тим, що правила підстановки можуть застосовуватись до будь-якого входження нетермінального символу. Якщо деякий проміжний ланцюжок містить більше одного нетермінального символу, то різний порядок застосування одних і тих самих правил підстановки до цих символів дає в результаті різні виводи. При цьому заключний термінальний ланцюжок і синтаксична структура, яка визначається будь-яким з таких виводів, залишаються незмінними. Зазвичай розглядаються не всі можливі виводи, а лише так звані лівосторонні (або правосторонні) виводи. Означення. Вивід ланцюжка  EMBED Equation.3  у КВ-граматиці називають G називають лівим (лівостороннім), якщо у цьому виводі кожна наступний проміжний ланцюжок утворюється шляхом заміни найлівішого нетермінального символу згідно з відповідним правилом виводу. Означення. Вивід ланцюжка  EMBED Equation.3  у КВ-граматиці називають G називають правим (правостороннім), якщо у цьому виводі кожна наступний проміжний ланцюжок утворюється шляхом заміни найправішого нетермінального символу згідно з відповідним правилом виводу. Наприклад, для ланцюжка  EMBED Equation.3  у граматиці  EMBED Equation.3  Можна побудувати такі виводи: 1)  EMBED Equation.3  2)  EMBED Equation.3  3)  EMBED Equation.3  Тут (2) − лівосторонній вивід; (3) − правосторонній вивід; (1) не є ні лівостороннім, ні правостороннім. Ці три виводи є еквівалентними у тому сенсі, що у одних і тих самих місцях сентенціальних форм застосовуються одні і ті ж самі правила виводу, але у різному порядку. Будувати синтаксичну структуру у вигляді кроків виводу не зовсім зручно, оскільки у такій формі явно не видно структуру програми. Більш наочним є зображення структури програми у вигляді дерева виводу (синтаксичного дерева). Під деревом виводу (синтаксичним деревом) у граматиці G будемо розуміти скінченний зв'язний орієнтований граф, що має такі властивості: У нього є одна вершина, у яку не входить жодна дуга; цю вершину будемо називати коренем дерева, корінь дерева відповідає аксіомі граматики. У кожну з його інших вершин входить лише одна дуга; вершини, які не мають вихідних дуг, називаються заключними вершинами дерева або листям, у КВ-граматиці їм відповідають термінальні символи граматики ( а також порожні ланцюжки у ВКВ-граматиці). Проміжним (не заключним) вершинам відповідають нетермінальні символи граматики. Граф не містить контурів. Кожна вершина дерева виводу у КВ-граматиці позначена символом  EMBED Equation.3  ( або  EMBED Equation.3  у ВКВ-граматиці). Якщо проміжна вершина помічена символом А, а її прямі нащадки − символами  EMBED Equation.3 , то  EMBED Equation.3 − правило граматики. Побудова синтаксичного дерева  EMBED Equation.3  за виводом  EMBED Equation.3  здійснюється у такий спосіб: 1) дерево  EMBED Equation.3  складається з єдиної вершини, поміченої символом  EMBED Equation.3 − аксіомою граматики; 2) нехай при  EMBED Equation.3  для виводу  EMBED Equation.3  побудовано дерево  EMBED Equation.3  і  EMBED Equation.3 ,  EMBED Equation.3  і  EMBED Equation.3  − правило граматики,  EMBED Equation.3 . У дереві  EMBED Equation.3  символи ланцюжка  EMBED Equation.3  є мітками його листя, виписаних зліва направо. Тоді дерево виводу  EMBED Equation.3  з ланцюжком листя  EMBED Equation.3  будується шляхом додава...
Антиботан аватар за замовчуванням

01.01.1970 03:01

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини